package cn.com.huzo.service.financial;

import cn.com.huzo.model.entities.financial.AccoutingPeriodEntity;
import huzofw.service.GenericManager;
import java.util.List;
import java.util.Map;

/**
 * 会计期管理服务对象接口。
 *
 * @author 吴旭
 */
public interface AccoutingPeriodManager extends GenericManager<AccoutingPeriodEntity, String> {

    /**
     * 返回给定会计年度下的期间。
     * <p>
     * @param apYear 会计年度
     * @return 期间数据列表
     * @throws java.lang.Exception
     */
    List<AccoutingPeriodEntity> fetchByApYear(String apYear) throws Exception;

    /**
     * 取得最后一个会计年度
     *
     * @return
     * @throws java.lang.Exception
     */
    Map<String, Object> fetchLastApYear() throws Exception;

    /**
     * 根据给定的条件创建会计期。
     *
     * @param itemList 会计期数据
     * @return
     * @throws java.lang.Exception
     */
    Integer bulk_insert(List<Map<String, Object>> itemList) throws Exception;
}
